The present invention relates generally to data processing systems and, more particularly, to displaying and editing properties of an object
Objects often have properties associated with them. A property defines an aspect of a state of an object For instance, a label for a form may be represented as an object, and the label object may have a xe2x80x9cFont Namexe2x80x9d property that identifies the font of the text contained in the label. A property also has an associated type, such as string or integer. An object typically has system defined properties associated with it. System defined properties are properties whose types are defined by the system. An object may also have application defined properties associated with it. Application defined properties are properties whose types are defined by an application developer. An application developer also defines an object and properties associated with the object
Current systems enable a-user to display and edit system defined properties of an object, such as the xe2x80x9cFont Namexe2x80x9d property. Some systems offer the per-property browsing method which allows display and editing of system defined properties which appear in a list, as illustrated in FIG. 1. Other systems offer the property sheet page method which allows display and editing of system defined properties which appear on system defined property sheet pages as illustrated in FIG. 2. System defined property sheet pages are property sheet pages which are defined by the system.
The per-property browsing method displays all system defined properties of one object on a list, typically in alphabetical order. For instance, in FIG. 1, a list of properties for a label object is depicted. One property name xe2x80x9cFont Namexe2x80x9d is shown along with the current value xe2x80x9cRoman.xe2x80x9d This method enables a user to find a particular property by searching the list for the system defined property. For example, a user would search through the list illustrated in FIG. 1 to find the property name xe2x80x9cFont Name.xe2x80x9d
The property sheet page method groups system defined properties into logical subsets which are displayed on system defined property sheet pages on a per object basis. Each system defined property sheet page may be used to display or edit a portion of the state of an object. For example, in FIG. 2, the xe2x80x9cFontxe2x80x9d group is illustrated on a system defined property sheet page for a label object, along with the property names xe2x80x9cFont Namexe2x80x9d and xe2x80x9cFont Size.xe2x80x9d FIG. 2 shows that the current state of the object is a xe2x80x9cRomanxe2x80x9d font name with size 12 print. Also, the method enables a user to find a particular system defined property by requesting the group that includes the system defined property. For example, the method enables a user to find the property name xe2x80x9cFont Namexe2x80x9d by requesting the xe2x80x9cFontxe2x80x9d group.
Additionally, objects generally have system defined properties associated with them. Some objects also have application defined properties associated with them. Some current systems are limited in their capabilities in that they do not provide display and editing of application defined properties, although they provide display and editing of system defined properties.
Some conventional systems lack the ability to provide multiple selection. That is, some conventional systems allow for display and editing of properties of a single object. When several objects have common properties which a user wishes to edit, the user selects each object and edits its property separately. With multiple selection, however, a user may display and edit the common properties of several objects at one time.
Also, conventional systems do not provide the ability to switch between the per-property browsing and property sheet page methods. Some users may prefer one method over the other. Also, sometimes, a user may prefer to use one method and then switch to the other method. Therefore, a user should be able to switch between the per-property browsing and property sheet page methods.
The above-described difficulties encountered by conventional systems are overcome by the present invention. In accordance with a first aspect of the present invention, a method is practiced in a data processing system that includes a video display and a processor that runs an application program. The data processing system also includes an operating system that includes a per-property browser. In this method, an object with associated system defined properties is provided. A list of system defined properties is displayed on the video display. An object with an associated application defined property is provided. An identifier to an application defined property type that is defined by the application program is obtained. A current value for the application defined property is obtained The identifier of the application defined property type and the current value for the application defined property are added to the list of system defined properties displayed on the video display.
In accordance with a further aspect of the present invention, a data processing system includes a video display. and a processing means running an operating system and an application program A list of system defined properties is also included in the data processing system. In this system, a means for displaying a list of system defined properties on the video display is provided. Also, a means for providing an object with an associated application defined property is included in the system. A means for obtaining an identifier to an application defined property type defined by the application program is provided. The system also includes a means for obtaining a current value for the application defined property. A means for adding the identifier of the application defined property type and the current value for the application defined property to the list of system defined properties displayed on the video display is provided.
In accordance with an additional aspect of the present invention, a method is practiced in a data processing system having a video display, a processor running an operating system, and a per-property browsing list. In this method, an object with an application defined property is provided. Code for a function is called to obtain the type of the application defined property. Code for a function is called to obtain the current value of the application defined property. The type and current value of the application defined property are added to the per-property browsing list. in accordance with another aspect of the present invention, a method is practiced in a data processing system that includes a video display and a set of system defined property sheet pages. An operating system that includes a property sheet page browser for browsing property sheet pages is also included in the data processing system. In this method, an object and an associated application defined property sheet page for the object are provided. The application defined property sheet page is added to the set of system defined property sheet pages displayed on the video display. The set of system defined property sheet pages is browsed using the property sheet page browser.
In accordance with yet another aspect of the present invention, a data processing. system includes a processing means for running an operating system, a video display, and a set of system defined property sheet pages. The system provides means for displaying the set of system defined property sheet pages. The system also provides means for providing an object with an associated application defined property sheet page. The system further provides means for adding the application defined property sheet page to the set of system defined property sheet pages displayed on the video display.
In accordance with an additional aspect of the present invention, a method is practiced in a data processing system that includes a video display. In this method, a plurality of objects, each having associated application defined properties, are received. The common application defined properties of the different objects are determined. The common application defined properties are displayed on a per-property browsing list on a video display.
In accordance with another aspect of the present invention, a method is practiced in a data processing system that includes a video display In this method, a plurality of objects, each having associated property sheet pages, are received. The method determines whether the objects have common property sheet pages. When the objects have common property sheet pages, the method displays the common property sheet pages on a video display.
In accordance with yet another aspect of the present invention, a method is practiced in a data processing system that includes a video display and an operating system that includes a per-property browser and a property sheet page browser. An application defined property is provided A per-property browsing list having an entry for the application defined property is provided A property sheet page browser having a property sheet page for the application defined property is provided. When receiving user input indicating a desire to switch from the per-property browser to the property sheet page browser, the method maps to a property sheet page. When receiving user input indicating a desire to switch from the property sheet page browser to the per-property browser, the method maps to a property sheet page containing a per-property browsing list